home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / ada / gnat1792.zip / gnat179b / t-adainc / a-teioau.ads < prev    next >
Text File  |  1994-05-19  |  7KB  |  209 lines

  1. ------------------------------------------------------------------------------
  2. --                                                                          --
  3. --                         GNAT RUN-TIME COMPONENTS                         --
  4. --                                                                          --
  5. --                      A D A . T E X T _ I O . A U X                       --
  6. --                                                                          --
  7. --                                 S p e c                                  --
  8. --                                                                          --
  9. --                            $Revision: 1.13 $                             --
  10. --                                                                          --
  11. --           Copyright (c) 1992,1993,1994 NYU, All Rights Reserved          --
  12. --                                                                          --
  13. -- GNAT is free software;  you can  redistribute it  and/or modify it under --
  14. -- terms of the  GNU General Public License as published  by the Free Soft- --
  15. -- ware  Foundation;  either version 2,  or (at your option) any later ver- --
  16. -- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
  17. -- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
  18. -- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
  19. -- for  more details.  You should have  received  a copy of the GNU General --
  20. -- Public License  distributed with GNAT;  see file COPYING.  If not, write --
  21. -- to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. --
  22. --                                                                          --
  23. ------------------------------------------------------------------------------
  24.  
  25. private package Ada.Text_Io.Aux is
  26.  
  27.    Current_In  : File_Type;
  28.    Current_Out : File_Type;
  29.    Current_Err : File_Type;
  30.    The_File    : File_Type;
  31.  
  32.    procedure Create
  33.      (File : in out File_Type;
  34.       Mode : in File_Mode := Out_File;
  35.       Name : in String := "";
  36.       Form : in String := "");
  37.  
  38.    procedure Open
  39.      (File : in out File_Type;
  40.       Mode : in File_Mode;
  41.       Name : in String;
  42.       Form : in String := "");
  43.  
  44.    procedure Close  (File : in out File_Type);
  45.  
  46.    procedure Delete (File : in out File_Type);
  47.  
  48.    procedure Reset
  49.      (File : in out File_Type;
  50.       Mode : in File_Mode);
  51.  
  52.    function Mode (File : in File_Type) return File_Mode;
  53.    function Name (File : in File_Type) return String;
  54.    function Form (File : in File_Type) return String;
  55.  
  56.    function Is_Open (File : in File_Type) return Boolean;
  57.  
  58.    ------------------------------------------------------
  59.    -- Control of default input, output and error files --
  60.    ------------------------------------------------------
  61.  
  62.    procedure Set_Input  (File : in File_Type);
  63.    procedure Set_Output (File : in File_Type);
  64.    procedure Set_Error (File : in File_Type);
  65.  
  66.    function Standard_Input return File_Type;
  67.    function Standard_Output return File_Type;
  68.    function Standard_Error return File_Type;
  69.  
  70.    function Current_Input return File_Type;
  71.    function Current_Output return File_Type;
  72.    function Current_Error return File_Type;
  73.  
  74.    --------------------------------------------
  75.    -- Specification of line and page lengths --
  76.    --------------------------------------------
  77.  
  78.    procedure Set_Line_Length (File : in File_Type; To : in Count);
  79.    procedure Set_Page_Length (File : in File_Type; To : in Count);
  80.  
  81.    function Line_Length (File : in File_Type) return Count;
  82.    function Page_Length (File : in File_Type) return Count;
  83.  
  84.    ------------------------------------
  85.    -- Column, Line, and Page Control --
  86.    ------------------------------------
  87.  
  88.    procedure New_Line
  89.      (File    : in File_Type;
  90.       Spacing : in Positive_Count := 1);
  91.  
  92.    procedure Skip_Line
  93.      (File    : in File_Type;
  94.       Spacing : in Positive_Count := 1);
  95.  
  96.    function End_Of_Line (File : in File_Type) return Boolean;
  97.  
  98.    procedure New_Page  (File : in File_Type);
  99.    procedure Skip_Page (File : in File_Type);
  100.  
  101.    function End_Of_Page  (File : in File_Type) return boolean;
  102.    function End_Of_File  (File : in File_Type) return boolean;
  103.  
  104.    procedure Set_Col  (File : in File_Type; To : in Positive_Count);
  105.    procedure Set_Line (File : in File_Type; To : in Positive_Count);
  106.  
  107.    function Col   (File : in File_Type) return Positive_Count;
  108.    function Line  (File : in File_Type) return Positive_Count;
  109.    function Page  (File : in File_Type) return Positive_Count;
  110.  
  111.    -----------------------------
  112.    -- Characters Input-Output --
  113.    -----------------------------
  114.  
  115.    procedure Get (Item : out Character);
  116.    procedure Put (Item : in Character);
  117.  
  118.    --------------------------
  119.    -- Strings Input-Output --
  120.    --------------------------
  121.  
  122.    procedure Get (Item : out String);
  123.    procedure Put (Item : in String);
  124.  
  125.    procedure Get_Line
  126.      (File : in File_Type;
  127.       Item : out String;
  128.       Last : out Natural);
  129.  
  130.    procedure Put_Line (File : in File_Type; Item : in String);
  131.  
  132.    -----------------------------------
  133.    -- Input-Output of Integer Types --
  134.    -----------------------------------
  135.  
  136.    Default_Width_Int : Field := 11;
  137.    Default_Base_Int  : Number_Base := 10;
  138.  
  139.    procedure Get_Int
  140.      (Item  : out Integer;
  141.       Width : in Field := 0);
  142.  
  143.    procedure Put_Int
  144.      (Item  : in Integer;
  145.       Width : in Field;
  146.       Base  : in Number_Base);
  147.  
  148.    procedure Get_Int
  149.      (From : in String;
  150.       Item : out Integer;
  151.       Last : out Positive);
  152.  
  153.    procedure Put_Int
  154.      (To   : out String;
  155.       Item : in Integer;
  156.       Base : in Number_Base);
  157.  
  158.    -----------------------------------
  159.    -- Input-Output of Float Types   --
  160.    -----------------------------------
  161.  
  162.    procedure Get_Float
  163.      (Item : out Float;
  164.       Width : in Field);
  165.  
  166.    procedure Put_Float
  167.      (Item : in Float;
  168.       Fore : in Field;
  169.       Aft  : in Field;
  170.       Exp  : in Field);
  171.  
  172.    procedure Get_Float
  173.      (From : in String;
  174.       Item : out Float;
  175.       Last : out Positive);
  176.  
  177.    procedure Put_Float
  178.      (To   : out String;
  179.       Item : in Float;
  180.       Aft  : in Field;
  181.       Exp  : in Field);
  182.  
  183.    ---------------------------------------
  184.    -- Input-Output of Enumeration Types --
  185.    ---------------------------------------
  186.  
  187.    procedure Get_Enum (Str : out String; Len : out Positive);
  188.  
  189.    procedure Get_Enum
  190.      (Str  : out String;
  191.       From : in String;
  192.       Len  : out Positive;
  193.       Last : out Positive);
  194.  
  195.    procedure Put_Enum
  196.      (Item  : in String;
  197.       Width : in Field;
  198.       Set   : in Type_Set);
  199.  
  200.    procedure Put_Enum
  201.      (To   : out String;
  202.       Item : in String;
  203.       Set  : in Type_Set);
  204.  
  205.    procedure Text_IO_Finalization;
  206.    --  Finialization cleanup routine for Text_IO files
  207.  
  208. end Ada.Text_Io.Aux;
  209.